.\"     Title: fldigi
.\"    Author: 
.\" Generator: DocBook XSL Stylesheets v1.73.2 <http://docbook.sf.net/>
.\"      Date: 05/06/2009
.\"    Manual: 
.\"    Source: 
.\"
.TH "FLDIGI" "1" "05/06/2009" "" ""
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.SH "NAME"
fldigi - digital modem program for hamradio operators
.SH "SYNOPSIS"
\fBfldigi\fR [\fIOPTIONS\fR]
.sp
.SH "DESCRIPTION"
\fBFldigi\fR is a cross\-platform multi\-modem program for most of the digital modes used by radio amateurs today: CW, PSK, MFSK, MT\-63, RTTY, Hellschreiber, DominoEX, Olivia, THOR and Throb are all supported\. It can also help calibrate a sound card to a time signal and do on\-air frequency measurement tests\. Fldigi features basic rig control, logging, and contest operation, \(lqpanoramic\(rq PSK decoding, a PSK Reporter client, and remote control via XML\-RPC\.
.sp
.SH "OPTIONS"
Long options begin with two hyphens and are handled by fldigi\. The option names may be abbreviated to any unambiguous substring, and the option argument may be separated from the name by a space or equals sign, as per getopt(3)\.
.sp
Short options begin with a single hyphen and are passed directly to FLTK\. They may be abbreviated only as indicated\.
.PP
\fB\-\-config\-dir\fR \fIDIRECTORY\fR
.RS 4
Look for and store configuration files in directory
\fIDIRECTORY\fR, which is created if it does not exist\. Defaults to \(lq$HOME/\.fldigi\(rq\.
.RE
.PP
\fB\-\-rx\-ipc\-key\fR \fIKEY\fR
.RS 4
Set the receive message queue key\. May be given in hex if prefixed with \(lq0x\(rq\. Defaults to \(lq9876\(rq or \(lq0x2694\(rq\.
.RE
.PP
\fB\-\-tx\-ipc\-key\fR \fIKEY\fR
.RS 4
Set the transmit message queue key\. May be given in hex if prefixed with \(lq0x\(rq\. Defaults to \(lq6789\(rq or \(lq0x1a85\(rq\.
.RE
.PP
\fB\-\-arq\-server\-address\fR \fIHOSTNAME\fR
.RS 4
Set the ARQ TCP server address\. Defaults to \(lq127\.0\.0\.1\(rq\.
\fIHOSTNAME\fR
may be any
\fInode name\fR
string accepted by
getaddrinfo(3)\.
.RE
.PP
\fB\-\-arq\-server\-port\fR \fIPORT\fR
.RS 4
Set the ARQ TCP server port\. Defaults to \(lq7322\(rq\.
\fIPORT\fR
may be any
\fIservice name\fR
string accepted by
getaddrinfo(3)\.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
Note
The \fI\-\-xmlrpc\-*\fR options are only available if fldigi was built with XML\-RPC support\.
.PP
\fB\-\-xmlrpc\-server\-address\fR \fIHOSTNAME\fR
.RS 4
Set the XML\-RPC server address\. Defaults to \(lq127\.0\.0\.1\(rq\.
.RE
.PP
\fB\-\-xmlrpc\-server\-port\fR \fIPORT\fR
.RS 4
Set the XML\-RPC server port\. Defaults to \(lq7362\(rq\.
.RE
.PP
\fB\-\-xmlrpc\-allow\fR \fIREGEX\fR
.RS 4
Allow only the methods whose names match
\fIREGEX\fR\.
\fIREGEX\fR
is a POSIX extended regular expression\.
.RE
.PP
\fB\-\-xmlrpc\-deny\fR \fIREGEX\fR
.RS 4
Allow only the methods whose names do not match
\fIREGEX\fR\.
.RE
.PP
\fB\-\-xmlrpc\-list\fR
.RS 4
List all available XML\-RPC methods and exit\. May be preceded by the
\fI\-\-xmlrpc\-allow\fR
or
\fI\-\-xmlrpc\-deny\fR
options to verify their effect\.
.RE
.PP
\fB\-\-debug\-level\fR \fILEVEL\fR
.RS 4
Set the event log verbosity\.
\fILEVEL\fR
is clamped to the range [0,4]; for
\fIQuiet\fR,
\fIError\fR,
\fIWarning\fR,
\fIInfo\fR, and
\fIDebug\fR\. Defaults to \(lq2\(rq (\fIWarning\fR)\.
.RE
.PP
\fB\-\-version\fR
.RS 4
Print version information and exit\.
.RE
.PP
\fB\-\-help\fR
.RS 4
Print options summary and exit\.
.RE
.SS "Standard FLTK options"
.PP
\fB\-bg, \-background\fR \fICOLOUR\fR
.RS 4
Set the background colour\.
.RE
.PP
\fB\-bg2, \-background2\fR \fICOLOUR\fR
.RS 4
Set the secondary (text) background colour\.
.RE
.PP
\fB\-di, \-display\fR \fIDISPLAY\fR
.RS 4
Specifies the X server to connect to; see
X(7)\.
.RE
.PP
\fB\-dn, \-dnd\fR or \fB\-nodn, \-nodnd\fR
.RS 4
Enable or disable drag and drop copy and paste in text fields\.
.RE
.PP
\fB\-fg, \-foreground\fR \fICOLOUR\fR
.RS 4
Set the foreground colour\.
.RE
.PP
\fB\-g, \-geometry\fR \fIGEOMETRY\fR
.RS 4
Set the initial window size and position\.
\fBFldigi may not honour this option\fR\.
.RE
.PP
\fB\-i, \-iconic\fR
.RS 4
Start fldigi in iconified state\.
\fBFldigi may not honour this option\fR\.
.RE
.PP
\fB\-k, \-kbd\fR or \fB\-nok, \-nokbd\fR
.RS 4
Enable or disable visible keyboard focus in non\-text widgets\.
.RE
.PP
\fB\-na, \-name\fR \fICLASSNAME\fR
.RS 4
Set the window class\. Defaults to \(lqFldigi\(rq\.
.RE
.PP
\fB\-ti, \-title\fR \fIWINDOWTITLE\fR
.RS 4
Set the window title\. Defaults to \(lqfldigi \- <callsign>\(rq\.
.RE
.SS "Additional UI options"
.PP
\fB\-\-font\fR \fIFONT[:SIZE]\fR
.RS 4
Set the widget font and (optionally) size\. Defaults to \(lqsans:12\(rq\.
.RE
.SS "Options useful to developers"
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
Note
The \-\-benchmark\-* options are only enabled if fldigi was built (exclusively) for benchmarking and batch decoding\.
.PP
\fB\-\-benchmark\-modem\fR \fIID\fR
.RS 4
Specify the modem\. Defaults to \(lq25\(rq (\(lqBPSK31\(rq)\.
.RE
.PP
\fB\-\-benchmark\-frequency\fR \fIFREQ\fR
.RS 4
Set the modem frequency in Hz\. Defaults to \(lq1000\(rq\.
.RE
.PP
\fB\-\-benchmark\-afc\fR \fIBOOLEAN\fR
.RS 4
Enable or disable modem AFC\. Defaults to \(lqfalse\(rq\.
.RE
.PP
\fB\-\-benchmark\-squelch\fR \fIBOOLEAN\fR
.RS 4
Enable or disable modem squelch\. Defaults to \(lqfalse\(rq\.
.RE
.PP
\fB\-\-benchmark\-squelch\-level\fR \fILEVEL\fR
.RS 4
Set the modem squelch level (1\-\-100%)\. Defaults to \(lq0\.0\(rq\.
.RE
.PP
\fB\-\-benchmark\-input\fR \fIINPUT\fR
.RS 4
Specify the input\. Must be a positive integer indicating the number of samples of silence to generate as the input, or, if fldigi was linked with libsndfile, the name of the input audio file\. The filename must contain non\-digit characters\.
.RE
.PP
\fB\-\-benchmark\-output\fR \fIFILE\fR
.RS 4
Specify the output data file\. Non\-textual output (i\.e\. Hellschreiber or MFSK images) cannot be saved\. Default: decoder output is discarded\.
.RE
.PP
\fB\-\-benchmark\-src\-ratio\fR \fIRATIO\fR
.RS 4
Specify the sample rate conversion ratio\. Defaults to \(lq1\.0\(rq (input is not resampled)\.
.RE
.PP
\fB\-\-benchmark\-src\-type\fR \fITYPE\fR
.RS 4
Set the sample rate conversion type\. TYPE is an integer in the range [0,4]\. Defaults to \(lq2\(rq (\(lqFastest SINC Interpolator\(rq)\.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
Warning
\fBThe following options should not be relied upon\. They are listed here only for the sake of completeness, and may be replaced by GUI settings or removed altogether in a future version\.\fR
.PP
\fB\-\-wfall\-width\fR \fIWIDTH\fR
.RS 4
Set the waterfall width\.
.RE
.PP
\fB\-\-wfall\-height\fR \fIHEIGHT\fR
.RS 4
Set the waterfall height\.
.RE
.PP
\fB\-\-window\-width\fR \fIWIDTH\fR
.RS 4
Set the minimum window width\.
.RE
.PP
\fB\-\-window\-height\fR \fIHEIGHT\fR
.RS 4
Set the minimum window height\.
.RE
.PP
\fB\-\-exit\-after\fR \fISECONDS\fR
.RS 4
Run for approximately
\fISECONDS\fR
seconds\.
.RE
.PP
\fB\-\-frames\-per\-buf\fR \fIFRAMES\fR
.RS 4
Set frames per buffer option to
\fIFRAMES\fR
when creating PortAudio streams\. Defaults to \(lq0\(rq (let PortAudio choose)\.
.RE
.PP
\fB\-\-pskr\-test\-str\fR \fISTRING\fR
.RS 4
Test the PSK reporter client pattern matching\. UTSL!
.RE
.SH "ENVIRONMENT"
Fldigi uses several environment variables:
.PP
FLDIGI_BROWSER
.RS 4
The web browser to use for http and file URIs\. Overrides
$BROWSER
and
xdg\-open(1)\.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
Note
The following variables are created in the environment of the child process that is forked by the \fI<EXEC>\fR macro\. They are empty if values are not available\.
.PP
FLDIGI_RX_IPC_KEY
.RS 4
The receive message queue key\.
.RE
.PP
FLDIGI_TX_IPC_KEY
.RS 4
The transmit message queue key\.
.RE
.PP
FLDIGI_VERSION
.RS 4
The version string\.
.RE
.PP
FLDIGI_PID
.RS 4
The process ID of the parent fldigi process\.
.RE
.PP
FLDIGI_CONFIG_DIR
.RS 4
The configuration directory\.
.RE
.PP
FLDIGI_MY_CALL
.RS 4
The operator\'s callsign\.
.RE
.PP
FLDIGI_MY_NAME
.RS 4
The operator\'s name\.
.RE
.PP
FLDIGI_MY_LOCATOR
.RS 4
The operator\'s IARU locator\.
.RE
.PP
FLDIGI_MODEM
.RS 4
The short modem name\.
.RE
.PP
FLDIGI_MODEM_LONG_NAME
.RS 4
The long modem name\.
.RE
.PP
FLDIGI_DIAL_FREQUENCY
.RS 4
The rig (radio) frequency\.
.RE
.PP
FLDIGI_AUDIO_FREQUENCY
.RS 4
The modem (audio) centre frequency\.
.RE
.PP
FLDIGI_FREQUENCY
.RS 4
The actual receive/transmit frequency, i\.e\. the sum of rig and modem frequencies taking into account the rig sideband\.
.RE
.PP
FLDIGI_LOG_FREQUENCY
.RS 4
The text (frequency in MHz) contained in the
\fIQSO Freq\fR
log field\.
.RE
.PP
FLDIGI_LOG_TIME_ON
.RS 4
The text (QSO start time) contained in the (time)
\fIOn\fR
log field\.
.RE
.PP
FLDIGI_LOG_TIME_OFF
.RS 4
The text (QSO end time) contained in the (time)
\fIOff\fR
log field\.
.RE
.PP
FLDIGI_LOG_CALL
.RS 4
The text (other station\'s callsign) contained in the
\fICall\fR
log field\.
.RE
.PP
FLDIGI_LOG_NAME
.RS 4
The text (other station\'s name) contained in the
\fIName\fR
log field\.
.RE
.PP
FLDIGI_LOG_RST_IN
.RS 4
The text (received RST) contained in the (RST)
\fIIn\fR
log field\.
.RE
.PP
FLDIGI_LOG_RST_OUT
.RS 4
The text (sent RST) contained in the (RST)
\fIOut\fR
log field\.
.RE
.PP
FLDIGI_LOG_QTH
.RS 4
The text (other station\'s QTH) contained in the
\fIQTH\fR
log field\.
.RE
.PP
FLDIGI_LOG_LOCATOR
.RS 4
The text (other station\'s IARU locator) contained in the
\fILoc\fR
log field\.
.RE
.PP
FLDIGI_LOG_NOTES
.RS 4
The text (free\-form notes) contained in the
\fINotes\fR
log field\.
.RE
.PP
FLDIGI_AZ
.RS 4
The text (azimuth in degrees to other station) contained in the
\fIAz\fR
log field\.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
Note
The following variables are only used if fldigi was built with debugging support (\fI\-\-enable\-debug\fR), or they are only useful when debugging specific modules\.
.PP
FLDIGI_PSKRTEST_COLOR
.RS 4
Forces colour output even if stdout is not a terminal\.
.RE
.PP
FLDIGI_PSKRTEST_NOTEOL
.RS 4
Forces EOL matching\. UTSL!
.RE
.PP
FLDIGI_NO_EXEC
.RS 4
If set, this variable disables glibc\'s malloc debugging, which fldigi enables by default when built for debugging\.
.RE
.PP
FLDIGI_TRACE_LOCKS
.RS 4
Traces
\fIFl::lock()\fR
calls\.
.RE
.PP
FLDIGI_HAMLIB_DEBUG
.RS 4
Initialises hamlib in debug mode\.
.RE
.SH "RESTRICTIONS"
Fldigi is licensed under the GNU GPL, which grants you the right to run the program for any purpose (freedom 0)\. However, permission to use it for the transmission of radio signals can only be obtained from the communications authority of your country\. When given, this permission almost always comes in the form of an amateur radio license\.
.sp
If you do not have an amateur radio license you can still have fun using fldigi as a shortwave listener\. One way to do so is by using the builtin PSK Reporter client to submit realtime spots of transmitting stations; see RESOURCES below\. All you need is a computer, homebrew SDR receiver, and simple wire antenna!
.sp
.SH "FILES"
Various files and subdirectories are created in $HOME/\.fldigi\. Some of the most interesting ones are listed below\.
.PP
fldigi_def\.xml
.RS 4
The main settings file\.
.RE
.PP
fldigi\.prefs
.RS 4
The \(lqstatus\(rq file\. Stores window geometries, button states, current modem, current audio frequency, squelch level, and so on\.
.RE
.PP
status_log\.txt
.RS 4
The event log\.
.RE
.PP
macros/macros\.mdf
.RS 4
The default macro file\.
.RE
.PP
palettes/
.RS 4
This directory contains waterfall palettes\.
.RE
.PP
scripts/
.RS 4
This directory is added to the PATH environment variable of the child process that runs <EXEC> macros\.
.RE
.PP
logs/
.RS 4
This directory contains logged received and sent text (when such logging is enabled), including the default logbook database, logbook\.adif\.
.RE
.PP
images/
.RS 4
Received MFSK images are automatically saved in this directory\.
.RE
.PP
freqanalysis\.csv
.RS 4
This file is written by the frequency analysis modem\. The fields are dial frequency, audio frequency, and offset\. See documentation for details\.
.RE
.sp
.it 1 an-trap
.nr an-no-space-flag 1
.nr an-break-flag 1
.br
Note
The following files are used if present\. They must be downloaded and copied to ~/\.fldigi/ by the user\.
.PP
cty\.dat
.RS 4
List of DXCC entities and callsign prefixes; used to display tooltips in the received text buffer, and also to auto\-fill the Country, Locator and Azimuth log fields\. Available at http://www\.country\-files\.com/cty/\.
.RE
.PP
lotw1\.txt
.RS 4
List of known LOTW users (one callsign per line); used for the received text tooltips\. Available at http://www\.hb9bza\.net/lotw/\.
.RE
.PP
AGMemberList\.txt or eqsl\.txt
.RS 4
List of \(lqAuthenticity Guaranteed\(rq eQSL users (one callsign per line); used for the received text tooltips\. Available at http://www\.eqsl\.cc/QSLcard/Programming\.cfm\.
.RE
.SH "EXAMPLES"
.PP
fldigi \-\-wfall\-height 144 \-\-font sans:11 \-fg "#c0c0c0" \-bg "#5f5f63" \-bg2 "#19213b"
.RS 4
This is how the author of this document invokes fldigi\.
.RE
.PP
fldigi \-\-xmlrpc\-deny "main\.(tx|tune|run_macro)"
.RS 4
Unregister XML\-RPC methods that may transmit\.
.RE
.PP
ssh \-L 7362:localhost:7362 remote\-host xvfb\-run fldigi \-display :99
.RS 4
Start fldigi on
\fIremote\-host\fR
under a \(lqfake\(rq X server\. (The
xvfb\-run(1)
utility is available on Debian systems)\. The remote \(lqheadless\(rq fldigi is then controlled via XML\-RPC on port 7362, e\.g\. using
fldigi\-shell(1)\.
.RE
.PP
fldigi \-\-benchmark\-input 480000 \-\-benchmark\-modem 1
.RS 4
Benchmark the DominoEX\-4 modem with 480K audio samples\.
.RE
.PP
fldigi \-\-benchmark\-input audio\.wav \-\-benchmark\-modem 25 \-\-benchmark\-frequency 1500 \-\-benchmark\-afc 1 \-\-benchmark\-squelch 1 \-\-benchmark\-squelch\-level 5\.0 \-\-benchmark\-output out\.txt
.RS 4
Read
\fIaudio\.wav\fR
(whose sample rate must be 8000Hz in this case) and decode BPSK\-31 signals at 1500Hz\. AFC is enabled and the squelch is set to 5%\. Decoded text is saved to
\fIout\.txt\fR\.
.RE
.SH "BUGS"
.sp
.RS 4
\h'-04'\(bu\h'+03'Batch decoding requires a connection to the X server even though no window is displayed\.
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'There is no batch encoding mode\.
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'Probably a few more\.
.RE
.SH "SEE ALSO"
fldigi\-shell(1), gmfsk(1), gpsk31(1), grig(1), rigctl(1), xlog(1), getaddrinfo(3), getopt(3), regex(7), X(7)
.sp
.SH "RESOURCES"
Main web site: http://www\.w1hkj\.com/Fldigi\.html
.sp
BerliOS project page: http://developer\.berlios\.de/projects/fldigi/
.sp
More information on MFSK16, DominoEX and other digital modes can be found at http://www\.qsl\.net/zl1bpu/
.sp
The PSK Automatic Propagation Reporter site can be found at http://www\.pskreporter\.info/
.sp
.SH "AUTHORS"
.PP
Fldigi was written by
.RS 4
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'David Freese,
W1HKJ\.
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'Stelios Bounanos,
M0GLD\.
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'Leigh L\. Klotz, Jr\.,
WA5ZNU\.
.RE
.PP
Fldigi also includes code written by others\. Among them are:
.RS 4
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'Tomi Manninen,
OH2BNS\.
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'Pawel Jalocha,
SP9VRC\.
.RE
.sp
.RS 4
\h'-04'\(bu\h'+03'Hamish Moffatt,
VK3SB\.
.RE
.sp
This manual page was written by Stelios Bounanos <sb[at]enotty(dot)net>\.
.sp
.SH "COPYING"
License GPLv2+: GNU GPL version 2 or later\.
.sp
